package mpbe.Componentes.TableColEdit;

/*
 * Este codigo es software libre y se encuentra licenciado 
 * bajo los términos de la Licencia Pública General de GNU versión 3 
 * según se encuentra publicada por la Free Software Foundation.
 * http://www.gnu.org/licenses/gpl.html
 * 
 * Autor: Martin Pablo Bellanca <martin.bellanca@gmail.com>
 * web: http://mpbe.blogspot.com/
 */

import org.eclipse.swt.widgets.Table;
import org.eclipse.swt.widgets.TableColumn;

public class ColumnTCE {
	private boolean editable = false;
	private WidgetsTCE widget = null;
	private TableColumn column = null;
	// variables de envoltura
	private int SWT;
	private String title = null;
	private boolean moveable;
	private boolean resizable;
	
	
	public ColumnTCE(int SWT, String title, boolean moveable, boolean resizable, boolean editable) {
		this.SWT = SWT;
		this.title = title;
		this.moveable = moveable;
		this.resizable = resizable;
		this.editable = editable;
	}
	public ColumnTCE(int SWT, String title) {
		this.SWT = SWT;
		this.title = title;
		this.moveable = false;
		this.resizable = true;
		this.editable = false;
	}	
	public ColumnTCE() {
		this.SWT = org.eclipse.swt.SWT.NONE;
		this.title = "";
		this.moveable = false;
		this.resizable = true;
		this.editable = false;
	}	
	
	protected TableColumn activateColumn(Table table){
		//Table table = tableCE.getTable();
		column = new TableColumn(table, SWT);
		column.setText (title);
		column.setMoveable(moveable);
		column.setResizable(resizable);
		column.pack();
		return column;
	}
	
	public boolean isEditable() {
		return editable;
	}
	public void setEditable(boolean editable) {
		this.editable = editable;
	}

	public WidgetsTCE getWidget() {
		return widget;
	}
	public void setWidget(WidgetsTCE widget) {
		this.widget = widget;
		
	}

	public String getTitle() {
		return column.getText();
	}
	public void setTitle(String title) {
		column.setText(title);
	}
	
	public boolean isMoveable() {
		return column.getMoveable();
	}
	public void setMoveable(boolean valor) {
		column.setMoveable(valor);
	}
	
	public boolean isResizable() {
		return column.getResizable();
	}
	public void setResizable(boolean valor) {
		column.setResizable(valor);
	}

	public TableColumn getColumn() {
		return column;
	}

	public void setColumn(TableColumn column) {
		this.column = column;
	}
		
}
